home *** CD-ROM | disk | FTP | other *** search
/ Gold Medal Software 1 / Gold Medal Software Volume 1 (Gold Medal) (1994).iso / drivers / ljp3fw.arj / LJFORM.PRG < prev    next >
Text File  |  1993-09-15  |  9KB  |  249 lines

  1. #include "ljprtiii.ch"
  2.  
  3. function FormBld()
  4.  
  5.    local nX := 4.5
  6.  
  7.    local nOldCPI, nOldLPI
  8.  
  9.        @ 5,10 say "Printing Form Graphics/Boxes"
  10.  
  11.  
  12.    /*  please notice I did not "SET PRINT ON" or "DEVICE TO" or any thing
  13.        let the LJ_ routines handle that for you.
  14.        you will want to do those things when directly accessing the printer
  15.        with @ x,y say ... Get, or ?/?? commands  ++ see below
  16.    */
  17.  
  18.    // ship to box
  19.        LJ_Box( { INCHES,  0.04, .25 , 1.32,  4.2,   0.02, SHADED_FILL, 100 } )
  20.  
  21.    //  sold to box
  22.        LJ_Line( ROWCOL,10.2, 2.5, 40,   9, SHADED_FILL, 10)
  23.  
  24.    //  invoice Header info  box
  25.        LJ_Box( {  INCHES, 1.70 , 4.5, 3.20, 7.98,  0.018, 2, 100 } )
  26.  
  27.    // HORIZONTAL LINES - top to bottom 1 - 8
  28.        LJ_Line( INCHES,  1.86,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 1
  29.        LJ_Line( INCHES,  2.04,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 2
  30.        LJ_Line( INCHES,  2.20,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 3
  31.        LJ_Line( INCHES,  2.34,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 4
  32.        LJ_Line( INCHES,  2.51,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 5
  33.        LJ_Line( INCHES,  2.67,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 6
  34.        LJ_Line( INCHES,  2.86,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 7
  35.        LJ_Line( INCHES,  3.01,  nX,    3.5, 0.002, BLACK_FILL, 100 )   // line 8
  36.  
  37.    // VERTICAL LINES  left to right 1 - 4
  38.        LJ_Line( INCHES,  2.67,  5.3,   0.003,  0.55, BLACK_FILL, 100 )  // line 1
  39.        LJ_Line( INCHES,  1.70,  5.75,  0.003,  1.50, BLACK_FILL, 100 )  // line 2
  40.        LJ_Line( INCHES,  2.67,  6.25,  0.003,  0.34, BLACK_FILL, 100 )  // line 3
  41.        LJ_Line( INCHES,  1.70,  7.15,  0.003,  0.35, BLACK_FILL, 100 )  // line 4
  42.  
  43.    // SHADED HORIZONTAL LINES - top to bottom 1 - 5
  44.        LJ_Line( INCHES,  1.70,  nX,      3.5, 0.167, SHADED_FILL, 10 ) // line 1
  45.        LJ_Line( INCHES,  2.04,  nX,      3.5, 0.166, SHADED_FILL, 10 ) // line 2
  46.        LJ_Line( INCHES,  2.340, nX,      3.5, 0.166, SHADED_FILL, 10 ) // line 3
  47.        LJ_Line( INCHES,  2.670, nX,      0.8, 0.55 , SHADED_FILL, 10 ) // line 4
  48.        LJ_LINE( INCHES,  2.670, nX+1.25, 0.5, 0.33 , SHADED_FILL, 10 ) // line 5
  49.  
  50.  
  51.    //  box 4 Detail Info
  52.  
  53.        LJ_Box( {  INCHES, 3.35, 0.0, 3.52, 5.0,  0.015, SHADED_FILL, 100 } )
  54.        LJ_Box( {  INCHES, 3.53, 0.0, 8.78, 7.97, 0.015, SHADED_FILL, 100 } )
  55.  
  56.        LJ_Line( INCHES, 3.35, 0.0,  1.0, 0.166, SHADED_FILL, 10 )
  57.        LJ_Line( INCHES, 3.53, 0.0, 7.98, 0.166, SHADED_FILL, 10 )
  58.  
  59.        LJ_Line( INCHES, 3.68, 0.0,   8.0,   0.002, BLACK_FILL, 100 )
  60.        LJ_Line( INCHES, 3.53, 0.55,  0.003, 5.25,  BLACK_FILL, 100 )
  61.        LJ_Line( INCHES, 3.53, 1.64,  0.003, 5.25,  BLACK_FILL, 100 )
  62.        LJ_Line( INCHES, 3.53, 5.735, 0.003, 5.25,  BLACK_FILL, 100 )
  63.        LJ_Line( INCHES, 3.53, 6.60,  0.003, 5.25,  BLACK_FILL, 100 )
  64.        LJ_Line( INCHES, 3.53, 6.95,  0.003, 5.25,  BLACK_FILL, 100 )
  65.  
  66.  
  67.    //  invoice totals / summary box
  68.  
  69.        LJ_Box( {   INCHES, 8.84, 0.0,   9.50, 7.98,  0.015, BLACK_FILL, 100 } )
  70.        LJ_Box( {   INCHES, 8.84, 6.5,   9.48, 7.96,  0.035, BLACK_FILL, 100 } )
  71.  
  72.        LJ_Line( INCHES, 8.84, 0.0,   8.0,  0.350,  SHADED_FILL, 15 )
  73.  
  74.        LJ_Line( INCHES, 9.19, 0.0,   8.0,   0.002, BLACK_FILL, 100 )
  75.        LJ_Line( INCHES, 8.84, 1.455, 0.003, 0.68,  BLACK_FILL, 100 )
  76.        LJ_Line( INCHES, 8.84, 2.84,  0.003, 0.68,  BLACK_FILL, 100 )
  77.        LJ_Line( INCHES, 8.84, 3.5,   0.003, 0.68,  BLACK_FILL, 100 )
  78.        LJ_Line( INCHES, 8.84, 4.78,  0.003, 0.68,  BLACK_FILL, 100 )
  79.  
  80.        @ 7,10 say "Printing Form Text"
  81.  
  82.    // set print to Compressed / 16.66 cpi mode
  83.        nOldCPI := LJ_SetLn( 1, 16.66 )
  84.        LJ_Send_CC( LJ_Font_SS( PRIMARY_SYMBOL_SET, ;
  85.                               PC_8, ;
  86.                               PROPORTIONAL_SPACING, ;
  87.                                0,;
  88.                                8,;
  89.                               ITALIC, ;
  90.                               THIN,;
  91.                               UNIVERS ) )
  92.  
  93.    //  invoice Header info  TEXT
  94.  
  95.        LJ_Say_YX( ROWCOL, 11, 80, "Invoice Date")
  96.        LJ_Say_YX( ROWCOL, 13, 80, "Our Order # ")
  97.        LJ_Say_YX( ROWCOL, 15, 80, "Account No. ")
  98.        LJ_Say_YX( ROWCOL, 17, 77, "Taxable %   ")
  99.        LJ_Say_YX( ROWCOL, 18, 77, "Our Truck   ")
  100.        LJ_Say_YX( ROWCOL, 19, 77, "Ship Via    ")
  101.  
  102.  
  103.        LJ_Say_YX( ROWCOL, 11, 96, "Invoice Number")
  104.        LJ_Say_YX( ROWCOL, 13, 96, "Your Order #  ")
  105.        LJ_Say_YX( ROWCOL, 15, 96, "Sales Rep.    ")
  106.        LJ_Say_YX( ROWCOL, 17, 96, "Terms:        ")
  107.        LJ_Say_YX( ROWCOL, 18, 96, "F.O.B.        ")
  108.  
  109.        LJ_Say_YX( ROWCOL, 11, 120, "Page")
  110.        LJ_Say_YX( ROWCOL, 21, 1,  "Job Description:")
  111.        LJ_Say_YX( ROWCOL, 22,  1,  "Prd Code       Quantity             Description")
  112.        LJ_Say_YX( ROWCOL, 22, 99, "Unit Price     Per      Extension")
  113.  
  114.    // set print to Normal / 10 cpi mode
  115.  
  116.        LJ_SetLn( 1, nOldCPI )
  117.        LJ_Send_CC( LJ_Font_SS( PRIMARY_SYMBOL_SET, ;
  118.                               PC_8, ;
  119.                               FIXED_SPACING, ;
  120.                               10,;
  121.                               12,;
  122.                               UPRIGHT_SOLID, ;
  123.                               SEMI_LIGHT,;
  124.                               COURIER ) )
  125.  
  126.        LJ_Say_YX( ROWCOL,  0,  3, "SOLD BY:" )
  127.        LJ_Say_YX( ROWCOL, 11,  3, "Sold To:" )
  128.        LJ_Say_YX( ROWCOL,  0, 29, "R O U G H   D R A F T   I N V O I C E")
  129.        LJ_Say_YX( ROWCOL, 54,  3, "Total of")
  130.        LJ_Say_YX( ROWCOL, 54, 19, "Taxable" )
  131.        LJ_Say_YX( ROWCOL, 55,  2, "Merchandise")
  132.        LJ_Say_YX( ROWCOL, 55, 16, "Merchandise")
  133.        LJ_Say_YX( ROWCOL, 54, 30, " MN ")
  134.        LJ_Say_YX( ROWCOL, 55, 30, "TAX %")
  135.        LJ_Say_YX( ROWCOL, 54, 37, "Minnesota")
  136.        LJ_Say_YX( ROWCOL, 55, 37, "Sales Tax")
  137.        LJ_Say_YX( ROWCOL, 55, 48, "Shipping/Handling")
  138.        LJ_Say_YX( ROWCOL, 55, 68, "AMOUNT DUE")
  139.        LJ_Say_YX( ROWCOL, 59, 28, "Thank You For Your Business!")
  140.        LJ_Say_YX( ROWCOL, 60,  2, "[Original]")
  141.  
  142.        @ 9,10 say "Printing Form Debugging Marks"
  143.  
  144.    // FORM DEBUGGING MARKS - DELETE THESE BEFORE PUTTING CODE INTO PRODUCTION
  145.  
  146.        LJ_Say_YX(ROWCOL,  0,  0, "█")
  147.        LJ_Say_YX(ROWCOL,  0, 40, "█")
  148.        LJ_Say_YX(ROWCOL,  0, 79, "█")
  149.        LJ_Say_YX(ROWCOL, 60,  0, "█")
  150.        LJ_Say_YX(ROWCOL, 60, 40, "█")
  151.        LJ_Say_YX(ROWCOL, 60, 79, "█")
  152.    *
  153.    // AND now back to DEFAULT/CLIPPER print formatting
  154.  
  155.        @ 11,10 say "Form Completed!"
  156.  
  157.        LJ_Say_YX( ROWCOL,0,0," ")          // reset print cursor to row 0, col 0
  158.  
  159.  
  160.  
  161.    return nil
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168. function PrtInvoice()
  169.    // AND now back to DEFAULT/CLIPPER print formatting
  170.  
  171.    local cInvNo   ,;
  172.          lConsole ,;
  173.          cDevice  ,;
  174.          lPrinter
  175.  
  176.    cInvNo := "I"+right(dtoc(date()),2)+"-C01"
  177.  
  178.    LJ_PosRC( 0, 0)
  179.  
  180.    lConsole := set(_SET_CONSOLE, .F.)        // SET CONSOLE OFF
  181.    cDevice  := set(_SET_DEVICE , "PRINTER")  // SET DEVICE TO PRINTER
  182.    lPrinter := set(_SET_PRINTER, .T.)        // SET PRINTER ON
  183.  
  184.  
  185.    SETPRC( 0, 0 )
  186.  
  187.        @  1, 5 say "Capitol City Software Inc"
  188.        @  2, 5 say "Box 15303   "
  189.        @  3, 5 say "Minneapolis  MN  55415-0303"
  190.        @  5, 5 say "Vox. (612) 376-0054"
  191.        @  6, 5 say "Fax. (999) 999-9999"
  192.        @  7, 5 say "CI$ - 76276,1333"
  193.  
  194.  
  195.        @ 11,47 SAY DATE() PICTURE "@D"
  196.        @ 11,59 SAY cInvNo
  197.        @ 11,74 SAY "1"
  198.  
  199.        @ 12, 5 say "Your Name Here"
  200.        @ 13, 5 say "Your Title Here"
  201.        @ 14, 5 say "Secondary Address Line Here"
  202.        @ 15, 5 say "Primary Address Line Here"
  203.  
  204.        @ 15,46 SAY "93-09-1001"
  205.        @ 15,59 SAY "Kevin Loucks"
  206.  
  207.        @ 16, 5 say "City, State Zip Line Here"
  208.        @ 16,63 SAY "Check/MoneyOrder"
  209.  
  210.        @ 23, 1 SAY "SRC"
  211.        @ 23,10 SAY "1"
  212.        @ 23,17 SAY "LJPRTIII (tm)   Version 1.04"
  213.        @ 23,60 SAY "39.95"
  214.        @ 23,67 SAY "EA"
  215.        @ 23,74 SAY "39.95"
  216.        @ 24,17 SAY "Complete Product Source Code "
  217.  
  218.        @ 35,17 SAY "This PRODUCT is intended for PCL 5 "
  219.        @ 36,17 SAY "compatible printers (i.e. HPIIIp)  "
  220.        @ 37,17 SAY "if you don't have one dont even try"
  221.        @ 38,17 SAY "making this thing work!            "
  222.  
  223.  
  224.        @ 40,17 SAY "Payment methods currently consist of    "
  225.        @ 41,17 SAY "Checks or Money Orders (US Dollars) made"
  226.        @ 42,17 SAY "out to  Capitol City Software Inc!      "
  227.  
  228.        @ 45,17 SAY "Sorry no credit cards or PO's!          "
  229.  
  230.        @ 48,17 SAY "Support by phone is Not available!      "
  231.        @ 49,17 SAY "If you must call anyway, you must rely  "
  232.        @ 50,17 SAY "on me being in a WARM FUZZY mood. >:-<  "
  233.  
  234.  
  235.  
  236.        @ 56, 2 SAY "$   39.95"
  237.        @ 56,18 SAY "$   39.95"
  238.        @ 56,30 SAY "7.00"
  239.        @ 56,40 SAY "2.80"
  240.        @ 56,56 SAY "$ 5.00"
  241.  //    @ 56,70 SAY "$ 47.75"    // if order from outside minnesota
  242.  //    @ 56,70 SAY "$ 44.95"    // if order from inside minnesota
  243.  
  244.    set(_SET_DEVICE,  cDevice )       // Restore device  setting
  245.    set(_SET_PRINTER, lPrinter)       // Restore printer setting
  246.    set(_SET_CONSOLE, lConsole)       // Restore console setting
  247.  
  248.    RETURN NIL
  249.